

var mybookUrl = basePath+'/book/mybooks';

$(function() {
	initDatagrid();
	initForm();
	initBtns();
})

function initBtns() {
	$("#btnSearch").click(function() {
		searchByIsbn();
	});
}

/**
 * 加载图书列表
 */
function initDatagrid() {
	$('#booklist').datagrid({    
	    url:mybookUrl, 
	    method:'get',
	    fitColumns : true,
	    rownumbers : true,
	    checkOnSelect : true,
	    columns:[[ 
	        {field:'ck',align : 'center',checkbox:true, hidden:true}, 
	        {title : '',field : 'bookCover',width : 60,align : 'center',formatter:function(value, obj, index){
    	    	var str = "";
    	    	if(value!="" || value!=null){
    	    	str = "<img style=\"height: 30px;width:25px;\" src=\""+bookCoverPath+value+"\"/>";
    	                                        return str;
    	    	}
	        }},
	        {title:'书名',field:'name',width:220,align:'center', formatter : function(value, obj, index) {
	        	return '《'+obj.book.bookName+'》';
	        }},    
	        {title:'ISBN',field:'bookIsbn',width:200,align:'center'},    
	        {title:'作者',field:'author',width:120,align:'center',formatter : function(value, obj, index) {
	        	var array = obj.book.bookAuthors;
	        	var authors = '';
	        	for(var i=0;i<array.length;i++) {
	        		authors = authors + array[i].authorName+'，';
	        	}
	        	return authors.substring(0,authors.length-1);
	        }},
	        {title:'售价',field:'bookPrice',width:80,align:'center',formatter : function(value, obj, index) {
	        	return '￥'+value;
	        }},
	        {title:'出版社',field:'press',width:300,align:'center', formatter : function(value, obj, index) {
	        	return value.pressName;
	        }},
	        {title:'获得时间',field:'getTime',width:130,align:'center',formatter : function(value, obj, index) {
	        	return new Date(obj.userBook.buyTime).Format("yyyy-MM-dd");
	        }},
	        {title:'已读',field:'userBook',width:100,align:'center',formatter:function(value, obj, index) {
	        	if(value.hasRead == '0') {
	        		return '未读完';
	        	} else {
	        		return '已读完';
	        	}
	        }}
	    ]],
	    pagination : true,
	    pageSize : 15,
	    pageList : [10, 15, 20 ,25],
	    toolbar : [
			   		{
			   			text : '添加',
			   			iconCls : 'icon-add',
			   			handler : function() {
			   				addBook();
			   			}
			   		},
			   		{
			   			text : '删除',
			   			iconCls : 'icon-remove',
			   			handler : function() {
			   				activState();
			   			}
			   		},
			   		{
			   			text : '提交',
			   			iconCls : 'icon-save',
			   			disabled : true,
			   			id:"submit",
			   			handler : function() {
			   				delBooks();
			   			}
			   		},
			   		{
			   			text : '取消',
			   			iconCls : 'icon-cancel',
			   			disabled : true,
			   			id:"cancel",
			   			handler : function() {
			   				initState();
			   			}
			   		}
				],
		onLoadSuccess : function() { //成功加载后的事件
		}

	}); 
}

/**
 * 初始化表单组件
 */
function initForm() {
	$("#bookLang").combobox({
		url : basePath + '/lang/list',
		method : 'GET',
		valueField:'id',   
        textField:'name' ,
		mode : 'remote'
	});
	
	$("#bookPress").combobox({
		url : basePath + '/press/list',
		method : 'GET',
		valueField:'pressId',   
        textField:'pressName' ,
		mode : 'remote'
	});
	
	$("#bookAuthor").combobox({
		url : basePath + '/author/list',
		method : 'GET',
		valueField:'authorId',   
        textField:'authorName' ,
		mode : 'remote'
	});
}

/**
 * 删除选中的图书
 */
function delBooks() {
	var url = '/userbook/';
	var bookIds = $('#booklist').datagrid('getSelections');
	if(null == bookIds || bookIds.length <= 0) {
		EasyUi.alert('请勾选要删除的图书！','warning');
		return;
	}
	var bookids = '';
	var row;
	for(var i=0;i<bookIds.length;i++) {
		row = bookIds[i];
		bookids = bookids + row.bookId + '-';
	}
	bookids = bookids.substring(0, bookids.length-1);
	var args = {
			time : new Date(),
	};
	$.ajax({
		url : basePath + url + bookids,
		data : args,
		type: 'DELETE',
		success : function(data) {
			var message = '';
			if(data >= 0) {
				message = '成功更新' + data + '条数据';
			} else {
				message = '更新失败';
			}
			reloadBookList();
			$.messager.show({
				title:'提示',
				msg:message,
				timeout:5000,//0为不消失
				width : 300,
				height : 100,
				showType:'slide',
			});
		}
	});
}


function addBook() {
	$("#addDialog").window('open');
}

function searchByIsbn() {
	console.info("--");
	if($("#bookIsbn").validatebox('isValid')) {
		var isbn = $("#bookIsbn").val().trim();
		var url = basePath + '/book/isbn/' + isbn;
		$.ajax({
			url : url,
			method:'GET',
			dataType : 'json',
			success : function(data) {
				if(data.result == 'SUCCESS') {
					console.info(data);
				} else {
					alert(data.message);
				}
			}
		});
	}
}





/**
 * ISBN校验器：
 * 前九位数字+最后一位字符（数字或x）
 */
$.extend($.fn.validatebox.defaults.rules, {    
    validateISBN: {    
        validator: function(value,param){   
        	console.info(value);
            if(null != value) {
            	console.info(value.length);
            	var exp = /^\d{13}$/;
        		if(exp.test(value)) {
        			return true;
        		}
        		a = value.substring(0,value.length-1);
        		b = value.substring(value.length-1,value.length);
        		if(exp.test(a) && (b == 'x' || b == 'X')) {
        			return true;
        		}
            }
            return false;
        },    
        message: '错误的ISBN.'   
    }    
});  




/**
 * 重载列表
 * 并恢复初始状态
 */
function reloadBookList() {
	$('#booklist').datagrid('reload');
	initState();
}

/**
 * 初始状态：
 * 提交、取消按钮不可用
 * 取消所有选中的行
 * 隐藏多选列
 */
function initState() {
	$('#submit').linkbutton('disable');
	$('#cancel').linkbutton('disable');
	$('#booklist').datagrid('clearSelections');
	$('#booklist').datagrid('hideColumn', 'ck');
}

/**
 * 编辑状态：
 * 显示多选列
 * 提交、取消按钮可用
 */
function activState() {
	$('#booklist').datagrid('showColumn', 'ck');
	$('#submit').linkbutton('enable');
	$('#cancel').linkbutton('enable');
}




